package com.lebang.mapper;

import com.lebang.entity.member.LbbMemberInviteDetail;
import com.lebang.example.LbbMemberInviteDetailExample;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.time.LocalDateTime;
import java.util.List;
@Repository
public interface LbbMemberInviteDetailMapper {
    long countByExample(LbbMemberInviteDetailExample example);

    int deleteByExample(LbbMemberInviteDetailExample example);

    int deleteByPrimaryKey(Integer id);

    int insert(LbbMemberInviteDetail record);

    int insertSelective(LbbMemberInviteDetail record);

    List<LbbMemberInviteDetail> selectByExample(LbbMemberInviteDetailExample example);

    LbbMemberInviteDetail selectByPrimaryKey(Integer id);

    int updateByExampleSelective(@Param("record") LbbMemberInviteDetail record, @Param("example") LbbMemberInviteDetailExample example);

    int updateByExample(@Param("record") LbbMemberInviteDetail record, @Param("example") LbbMemberInviteDetailExample example);

    int updateByPrimaryKeySelective(LbbMemberInviteDetail record);

    int updateByPrimaryKey(LbbMemberInviteDetail record);

    LbbMemberInviteDetail getByMemberId(String memberId);

    LbbMemberInviteDetail getByMemberIdAndInviteId(@Param("memberId")String memberId,@Param("inviterId") String inviterId);

    void updateEnableById(@Param("memberId")String memberId, @Param("inviterId")String inviterId);

    int getCountByMemberId(@Param("memberId")String memberId,@Param("min") LocalDateTime min,@Param("max") LocalDateTime max);

    List<String> getTdByMemberId(String memberId);

    Integer checkTdByMemberId(@Param("memberId") String memberId);
}